package io.framework.modules.water.service;

import io.framework.common.page.PageData;
import io.framework.common.service.CrudService;
import io.framework.modules.water.dto.WaterDTO;
import io.framework.modules.water.entity.WaterEntity;
import io.framework.modules.water.vo.WaterVo;

import java.util.List;
import java.util.Map;

/**
 * 饮用水源地/检测断面 水质类别表
 *
 * @author Gujq email
 * @since 1.0.0 2020-05-22
 */
public interface WaterService extends CrudService<WaterEntity, WaterDTO> {

    /**
     * 水质达标情况
     *
     * @param params
     * @return
     */
    Map<String, Object> getWaterPassInfo(Map<String, Object> params);

    /**
     * 站点水质现状类别占比
     *
     * @param params
     * @return
     */
    Map<String, Object> getwaterRateInfo(Map<String, Object> params);

    /**
     * 获取单个水站点数据 详细信息
     *
     * @param params
     * @return
     */
    WaterDTO getWaterInfoByStationId(Map<String, Object> params);

    /**
     * 验证水环境数据上传
     *
     * @param type
     * @param month
     * @return
     */
    Boolean checkData(Integer type, String month);

    void deleteInfoByDate(Integer type, String year);

    PageData<WaterVo> pageList(Map<String, Object> params);

    Map<String, Object> maxTime();
}
